/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package simplexml.reporte;

/*
 * @author Dianita
 */
import java.util.HashMap;
import net.sf.jasperreports.engine.JREmptyDataSource;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.view.JasperViewer;

public class Reporte {
    //C:\tourpnp\src\java\reporte\reporte_votos.jrxml

    private String dirInicio = "";
    private String dirDestino = "";
    //private String salida="src/java/reporte/ReporteSugerencia.jrxml";

    public void crearReporte(String url, String u, HashMap parametros) {

        dirInicio = "C:/Reportes/" + url;
        dirDestino = "C:/Reportes/" + u;
        try {
            JasperReport jasperReport = JasperCompileManager.compileReport(dirInicio);//compilar el reporte
            JasperPrint jasperPrint =
                    JasperFillManager.fillReport(jasperReport, parametros, new JREmptyDataSource());//crear el reporte
//                JasperExportManager.exportReportToPdfFile(
//                    jasperPrint, salida);//para exportalo
            JasperExportManager.exportReportToPdfFile(jasperPrint, dirDestino);

            //textField-1

            //HttpServletResponse response = (HttpServletResponse) o.getResponse();
//                byte[] fichero = JasperRunManager.runReportToPdf (jasperReport, parametros,new Conexion().currentSession().connection());
//
//                response.setContentType ("application/pdf");
//                response.setHeader ("Content-disposition", "inline; filename=RegistrodeGradosyTitulos.pdf");
//                response.setHeader ("Cache-Control", "max-age=30");
//                response.setHeader ("Pragma", "No-cache");
//                response.setDateHeader ("Expires", 0);
//                response.setContentLength (fichero.length);
//                ServletOutputStream out;
//                out = response.getOutputStream ();
//
//                out.write (fichero, 0, fichero.length);
//                out.flush ();
//                out.close ();

            //JasperRunManager
            JasperViewer.viewReport(jasperPrint, false);

        } catch (Exception ex) {
            ex.printStackTrace();
            System.out.println("error de reporte Votación: " + ex);
        }
    }

    public static void main(String[] args) {
        HashMap parametros = new HashMap();
        parametros.put("Field", "hola");
        new Reporte().crearReporte("Prueba.jrxml", "Prueba.pdf", parametros);
    }
}
